Manoeuvring items into a boot space

ABSTRACT

A first set of dimensions can be derived corresponding to a real-world space and a second set of dimensions can be derived corresponding to a first physical item in the real-world. Further included is deriving a virtual representation of the real-world space from the first set of dimensions in a virtual environment and deriving a virtual representation of the first physical item from the second set of dimensions in the virtual environment. The virtual representation of the real-world space is represented as a hollow space, and the virtual representation of the first physical item is represented as a solid item that is user-manipulatable within the virtual environment and the virtual representation of the real-world space.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application claims priority to Great Britain Application No.1916131.4, filed Nov. 6, 2019, which is hereby incorporated herein byits reference in its entirety.

BACKGROUND

Some users can find it challenging to assess whether items (e.g.luggage) they want to transport (e.g. in a vehicle) can fit into a space(e.g. a vehicle's boot space). Furthermore, some users can find itchallenging to assess the best way in which a plurality of items can fitinto a space. In other words, it can be challenging to determine howbest to pack a plurality of items into a space such that a maximumamount of items may be transported in that space.

BRIEF DESCRIPTION OF FIGURES

For a better understanding of the present disclosure, and to illustratehow certain examples may be put into effect, examples will now bedescribed with reference to the accompanying drawings in which:

FIG. 1 is a flowchart of an example method.

FIG. 2A is schematic diagram of an example item of luggage to be storedin an example vehicle boot space/cargo area.

FIG. 2B is a schematic diagram of a virtual environment showing virtualrepresentations of the item of luggage and cargo area of FIG. 2A.

FIG. 3A is a schematic diagram of virtual environments showing a virtualrepresentation of a physical item intersecting a (non-entrance) face ofa virtual representation of a real-world space.

FIG. 3B is a schematic diagram of virtual environments showing a virtualrepresentation of a physical item intersecting a (non-entrance) face ofa virtual representation of a real-world space.

FIG. 3C is a schematic diagram of virtual environments showing a virtualrepresentation of a physical item touching a nonpenetrable face or avirtual item;

FIG. 3D is a schematic diagram of virtual environments showing a virtualrepresentation of a physical item touching a nonpenetrable face or avirtual item.

FIG. 4 is a flowchart of an example method.

FIG. 5A is a schematic diagram of virtual environments showing virtualrepresentations of a plurality of items to be stored in a virtualrepresentation of a real-world space.

FIG. 5B is a schematic diagram of virtual environments showing virtualrepresentations of a plurality of items to be stored in a virtualrepresentation of a real-world space.

FIG. 6A is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a physical item.

FIG. 6B is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a physical item.

FIG. 6C is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a physical item.

FIG. 6D is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a physical item.

FIG. 7A is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a real-world space.

FIG. 7B is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a real-world space.

FIG. 7C is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a real-world space.

FIG. 7D is a schematic diagram of a process of obtaining a set ofdimensions and/or a virtual representation of a real-world space.

FIG. 8 is a schematic diagram of a real-world packing operationcomprising a plurality of items to be stored in a real-world space anddevice, showing a virtual environment, for the assistance of the user inthe packing operation.

FIG. 9 is a schematic diagram of a machine-readable medium inassociation with a processor.

DETAILED DESCRIPTION

The present disclosure relates to the placing of individual items withina target three-dimensional space. Particularly, although notexclusively, the disclosure relates to determining ways of placing aplurality of items within a confined space, such as the boot space of avehicle, for storage or transport.

Some examples herein provide a user-friendly way to determine an optimumpackaging exercise, for example to enable a user to determine possibleways in which an item can fit into a (real-world, physical) space andthereby enable the user to determine the “best” way that a plurality ofitems can fit into the space.

According to some examples herein there is provided a means for a userto manipulate a virtual representation of a first item (e.g. an item ofluggage), to be fitted into a real-world space (such as a vehicle boot).Some examples herein thereby enable a user to perform a packing exercisevirtually to thereby avoid the somewhat tedious task of physicallymaneuvering items into the space and face situations where the items donot all fit. To accomplish this, some examples herein relate to buildinga virtual representation of an item to be fit in a space and to buildinga virtual representation of the space, such that the virtualrepresentation of the item is manipulatable, by a user, within thevirtual representation of the space, allowing the user to, virtually,manipulate the item within the space to assess various configurations ofthe item in the space to determine how the item might be loaded in thespace in the real-world.

Therefore, to enable this determination to be applicable to thereal-world, the (e.g. virtual) dimensions of the item to be fit into aspace correspond to the physical dimensions of the item in the realworld and, similarly for the (e.g. virtual) dimensions of the(real-world) space (e.g. a vehicle boot space). For example, if thevirtual item appears to take up one-third of the virtual space then theuser can assume, with a reasonably high degree of confidence, that thereal-world item will take up approximately one-third of the real-worldspace. By way of another example, if the virtual representation of theitem is not able to fit in the virtual space, e.g. even withmanipulation by the user (e.g. rotating the item) then the user canassume, with a reasonably high degree of confidence, that the real-worlditem will not fit in the real-world space. By extension, if, the userconcludes, based on the virtual reality build by some examples herein,that the virtual representation of a plurality of items (e.g. aplurality of virtual representations, each representation being of arespective real-world item) cannot fit into virtual representation of aspace, the user can assume, with a reasonably high degree of confidence,that the plurality of items will not be able to all fit within thespace. In this last example, this may lead the user to divide up theplurality of items into two sets, each set to be placed in a different,respective, space.

Some examples herein therefore relate to building a virtual environment,the virtual environment comprising a virtual representation of aphysical item and a virtual representation of a real-world space, suchthat the virtual item is manipulatable (e.g. user-manipulatable), forexample moveable and/or rotatable, within the virtual space so that theuser, e.g. through trial and error, may virtually try and fit thevirtual item in the virtual space to determine whether (and/or how) thereal-world item may fit into the real-world space.

According to a first example there is provided a method comprisingderiving a first set of dimensions corresponding to a real-world space,deriving a second set of dimensions corresponding to a first physicalitem in the real-world, deriving a virtual representation of thereal-world space from the first set of dimensions in a virtualenvironment, deriving a virtual representation of the first physicalitem from the second set of dimensions in the virtual environment,wherein the virtual representation of the real-world space isrepresented as a hollow space, and wherein the virtual representation ofthe first physical item is represented as a solid item that isuser-manipulatable within the virtual environment and the virtualrepresentation of the real-world space.

The first set of dimensions may be virtual dimensions that substantiallycorrespond to the real-world dimensions of the real-world space. Thesecond set of dimensions may be virtual dimensions that substantiallycorrespond to the real-world dimensions of the first physical item.Alternatively, the first set of dimensions may be the real-worlddimensions of the real-world space and/or the second set of dimensionsmay be the real-world dimensions of the first physical item.

Accordingly, deriving the first and/or second set of dimensions maycomprise at least one of: measuring the real-world dimensions of thereal-world space and/or the first physical item, extracting thereal-world dimensions of the real-world space and/or the first physicalitem form a dataset; and determining the real-world dimensions of thereal-world space and/or the first physical item.

In other words, in one example real-world dimensions of the physicalitem and/or space may be obtained and a virtual representation may bebuilt from the real-world dimensions. In other examples, virtualdimensions may characterise the physical item and/or space and thevirtual dimensions may be stored as a way of storing a representation ofthe physical item and/or space and the virtual dimensions may be used tobuild the virtual representation. In either example, the dimensions maybe stored in a database and deriving the dimensions may compriseaccessing the database and retrieving the (real-world or virtual)dimensions from the database.

In other examples, the virtual representation of the first physical itemand/or the real-world space may be stored in a database and deriving thevirtual representation may comprise accessing the database to retrievethe stored virtual representation. As dimensions may characterise thevirtual representation, storing the representation may comprise storingthe dimensions (real-world or virtual).

According to the method of this example, the virtual representation ofthe real-world space is represented as a hollow space, and wherein thevirtual representation of the first physical item is represented as asolid item that is user-manipulatable (e.g. moveable, e.g.rotatable/translatable etc.) within the virtual environment and thevirtual representation of the real-world space, for example, for examplesuch that the virtual representation of the first physical item ismoveable through the boundaries of the virtual representation of thereal-world space. This may enable a user to determine whether and/or howthe first physical item can fit in the real-world space by manipulatingthe virtual representation of the first physical item in the virtualrepresentation of the real-world space.

If the virtual representation of the first physical item intersects witha boundary of the virtual representation of the real-world space, themethod may further comprise changing the virtual representation of atleast one of the first physical item and the boundary intersecting thefirst physical item.

In other words, the representation of the item and/or intersectingboundary is changed to provide a visual indication that the virtualconfiguration of the time in the space cannot be achieved in thereal-world. Since the boundary in the real-world corresponding to thevirtual boundary which the item intersects will be a physical boundary(e.g. walls of a vehicle boot space) a physical intersection between thephysical item and this physical boundary is not possible. The changingrepresentation therefore provides a visual indicator to the user that,if the virtual item is intersecting the virtual boundary, thiscorresponds to the physical item being “through a wall”. Changing thevisual representation may therefore comprise modifying the appearance ofthe visual representation of the first physical item or the boundary ofthe virtual representation of the real-world space that intersects withthe virtual representation of the first physical item.

The virtual representation of the real-world space may comprise a numberof bounding faces defining the hollow space as a three-dimensionalvolume therebetween bounded by the bounding faces, wherein each facerepresents a boundary of the virtual representation of the real-worldspace, and wherein at least one of the bounding faces represents anentrance to the virtual representation of the real-world space, and, ifthe virtual representation of the first physical item intersects with abounding face of the virtual representation of the real-world space, themethod further comprises modifying the virtual representation of atleast one of the first physical item and the bounding face intersectingthe first physical item, unless the bounding face is the entrance to thevirtual representation in which case the appearance of the virtualrepresentation of a physical item and/or the virtual representation ofthe real-world space is not modified. In other words, the method maycomprise not modifying (or changing) the appearance of the virtualrepresentation of the physical item and/or real-world space if the itemintersects the bounding face designated as the entrance to the virtualrepresentation of the real-world space.

In some examples at least one of the bounding faces may be penetrable bythe virtual representation of the first physical item—e.g. a user may beable to drag the virtual representation of the first physical itemthrough the penetrable bounding face. In some examples at least one ofthe bounding faces may be impenetrable by the virtual representation ofthe first physical item—e.g. a user may be unable to drag the virtualrepresentation of the first physical item through the impenetrablebounding face, which acts in this example as a hard stop to the firstphysical item.

A user may be able to configure a bounding face as either penetrable orimpenetrable, or they may be automatically designated. For example, anentrance to the virtual representation of the real-world space may bepenetrable and a user may designate a face to be the entrance, or datadescribing the real-world space (e.g. CAD data) may designate a face tobe the entrance. Any number of bounding faces may be penetrable orimpenetrable and these may be user-designated or automaticallydesignated. In other words, a user may configure any number of faces (orsurfaces) of the virtual representation of the real-world space to bepenetrable.

In one example, a face may be designated as the entrance to the virtualspace, and therefore penetrable, with all remaining faces of the virtualspace being designated as impenetrable. In this way, according to someexamples herein, an indication may be provided to a user as to whether avirtual item may be able to fit through the entrance. For example, thereal-world item may be able to fit in (e.g. within) the real-world spacebut the item may be too big to actually get in through the entrance.Some examples herein visually indicate to the user that this is thecase, e.g. in the manner described above where the representation of thevirtual item and/or virtual space is changed, to thereby indicate to theuser that the item cannot fit through the entrance (since in thisexample where the virtual item cannot fit in the entrance it willintersect another face of the virtual space that is not designated asthe entrance.

The method may further comprise placing the virtual representation ofthe first physical item in the virtual representation of the real-worldspace. This may be done automatically, for example by a processor orunder the control of a controller, such as a control unit, for example(as will be described below, by a processor caused by machine-executableinstructions). This may be done according to a control algorithm, forexample an optimisation algorithm that is configured to place thevirtual representation of the first physical item into the virtualrepresentation of the real-world space such that a parameter isoptimised.

The method may further comprise instructing a user to place the firstphysical item in the real-world space according to the virtualconfiguration of the virtual representation of the first physical itembeing in the virtual representation of the real-world space.

The method may further comprise deriving a third set of dimensionscorresponding to a second physical item, deriving a virtualrepresentation of the second physical item from the third set ofdimensions in the virtual environment wherein the virtual representationof the second physical item is represented as a solid item that isuser-manipulatable within the virtual environment and the virtual space.In other words, according to the method, virtual representations offirst and second items may be derived (e.g. created) and these may beuser-manipulatable within the virtual space to enable a user todetermine a configuration according to which that the first and seconditems may be placed in the virtual space—the user may then adopt thisconfiguration to place the real-world items in the real-world space.

The virtual representations of the first physical item and secondphysical item may not be permitted to at least one of: pass through,overly, overlay, clash, and mesh. In other words, as the virtualrepresentations are of physical items, the virtual representationsshould appear to obey the laws of physics, being applicable to thephysical items in the real-world—and therefore the virtualrepresentations should not pass through one another, and should be ableto be “stacked” on top of one another. In other words, each virtualrepresentation of the items are “viewed” by the other as a solid object,and the collision of two representations should not result in theappearance that one has passed through the other. In this way, the usermay not just view how the two items may be placed side-by-side in thespace but how they may be stacked on top of one another. In this exampletherefore, a virtual representation of a physical item may onlyintersect with a surface of the virtual representation of the real-worldspace, and not with a virtual representation of another physical item.Of course, in some examples a virtual representation of a physical itemmay not intersect with the virtual representation of the real-worldspace (e.g. depending on the number of faces of the virtual space thatare designated as impenetrable).

If the virtual representation of the second physical item intersectswith a boundary of the virtual representation of the real-world space(e.g. a bounding face thereof, as described above), the method mayfurther comprise changing the virtual representation of at least one ofthe second physical item and the boundary intersecting the firstphysical item. The method may further comprise modifying the appearanceof the visual representation of the second physical item or the boundaryof the virtual representation of the real-world space that intersectswith the virtual representation of the second physical item. As above,this provides a visual indication to the user that the depictedconfiguration of the second item in the space is not possible in thereal-world.

The method may comprise modifying the appearance of the virtualrepresentation of a physical item when the virtual representation isfully contained within the virtual representation of the real-worldspace. This gives the user a visual indication as to whether thephysical item can fit in the real-world space in the shown configurationor not.

The method may further comprise arranging, e.g. by a processor or underthe control of a controller, the virtual representations of the firstand second physical items so that both items fit within the virtualrepresentation of the real-world space. This may be done automatically,for example, according to an optimisation algorithm that is to optimisea parameter (e.g. the remaining three-dimensional space in the virtualspace once all of the items are stored in the space, or the maximumnumber of items that can fit in the virtual space).

To derive a set of dimensions (e.g. the first, second or third set ofdimensions), the method may further comprise selecting a first position,selecting a second position to define a one-dimensional line between thefirst and second positions, selecting a third position to define atwo-dimensional area spanned by the first, second, and third position,and selecting a fourth position to define a three-dimensional volumespanned by the first, second, third, and fourth positions, thethree-dimensional volume being the virtual representation of the firstor second physical item or real-world space (e.g. the line between thefirst and second positions defines a virtual width, the line between thefirst or second and third positions defines a virtual length and theline between the first, second, or third, positions and the fourthposition defines a virtual depth). In this way, to obtain the mostaccurate set of dimensions the first, second, third and fourth positionsmay each correspond to a respective corner of an object (e.g. the itemof the space). This may be done manually, e.g. by a user tapping ascreen of a smart device (e.g. when viewing a real-world object throughthe camera and tapping on the screen at a location corresponding to areal-world boundary of the item) or automatically. In this way, objectswith non-regular shapes may be approximated by rectangular prisms.Although, in other examples, the virtual representations of either aphysical item or real-world space may be other than rectangular. Forexample, a user may device that a different shape may be used toapproximate a real-world item, or a representation of any number offaces (e.g. pentagonal prism, hexagonal prism, etc.) may be derived foreither the representation of the physical item or real-world space.

To derive a set of dimensions of the first physical object, the secondphysical object, and/or the real-world space, the method may compriseselecting a first position (e.g. a virtual position in the virtualenvironment), selecting a second position (e.g. a virtual position) todefine a one-dimensional line between the first and second positions,selecting a third position (e.g. a virtual position) to define atwo-dimensional area spanned by the first, second, and third position,and selecting a fourth position (e.g. a virtual position) to define athree-dimensional volume spanned by the first, second, third, and fourthpositions, wherein at least one dimension in the set of dimensions isthe length of a line between two of the four positions.

To derive a virtual representation of the first physical object, thesecond physical object, and/or the real-world space, the method maycomprises selecting a virtual first position in the virtual environment,selecting a virtual second position in the virtual environment to definea one-dimensional virtual line between the first and second virtualpositions, selecting a virtual third position to define atwo-dimensional virtual area spanned by the first, second, and thirdvirtual positions, and selecting a fourth virtual position to define athree-dimensional virtual volume spanned by the first, second, third,and fourth positions, the three-dimensional virtual volume being thevirtual representation of the first physical item, the second physicalitem, or real-world space, respectively. This may be done by a userusing a smart device, for example a smart phone, or a camera thereof.This may be done by a user as the user is viewing the physical itemthrough a camera of their smart phone, in which case the user may tapthe screen of the smart device to mark the first virtual position at aposition that corresponds, through the camera, to a corner of the itemetc. The user may move the smart device to view another corner of theitem to mark the second position etc.

The method may further comprise at least one of: storing real-worlddimensions in a database; and storing virtual dimensions, correspondingto real-world dimensions in a database, for example, the dimensions maycomprise the dimensions (virtual or real-world) of the first virtualitem, real-world space, and/or second virtual item.

The method may further comprise storing at least one of the first set ofdimensions, the second set of dimensions, the third set of dimensions,the virtual representation of the first physical item, the virtualrepresentation of the real-world space, and the virtual representationof the second physical item, in a database.

As stated above, the virtual representation of the first item and/or therepresentation of the second physical item may not be permitted to crossa virtual boundary of the virtual representation of the real-worldspace. In this example, the virtual representation of the real-worldspace may comprise a number of bounding faces, each face representing aboundary of the virtual space, with one of those faces being an entranceto the virtual space, the virtual representation of the first itemand/or the virtual representation of the second physical item beingmovable through this face but not the other faces.

For example, as the real-world space is a three-dimensional volume, thevirtual representation of the real world space may comprise six faces,two of which may be identified as the respective “top” and “bottom” ofthe space, the remainder of which may be identified as the “sides” ofthe space. The three-dimensional volume spanned by these faces, orboundaries, or boundary surfaces, may therefore correspond to thereal-world space. According to the example method, one of these boundaryfaces may be a designated “entrance” to the virtual space, thedesignated entrance corresponding to a real-world entrance to the space.For example, if the real-world space is a vehicle boot space, one of thebounding faces of the virtual representation of the space willcorrespond to the boot, or trunk, of the vehicle. In the real world, theboot, or trunk, will be openable/closeable with respect to the remainderof the boot space but in the virtual representation the facecorresponding to the boot may be designated the entrance and the virtualrepresentations of the first and second physical items may be able topass through, or move through, this face without the virtual environmentchanging. A user may be able to designate the face representing theentrance to the virtual space, and therefore the method may comprisedesignating one virtual face of the virtual representation of thereal-world space as an entrance to the virtual space.

According to another example there is provided a method comprisingcreating a virtual representation of an item in a virtual environment,and creating a virtual representation of a three-dimensional space inthe virtual environment, wherein the virtual representation of the itemis user-manipulatable within the virtual representation of thethree-dimensional space such that a user is able to determine whetherthe virtual representation of the item is able to fit within the virtualrepresentation of the three-dimensional space.

According to another example there is provided a method comprisingderiving a set of dimensions corresponding to a first physical item inthe real-world and deriving, from the set of dimensions, a virtualrepresentation of the first physical item in a virtual environment byselecting a virtual first position in the virtual environment, selectinga virtual second position in the virtual environment to define aone-dimensional virtual line between the first and second virtualpositions, selecting a virtual third position to define atwo-dimensional virtual area spanned by the first, second, and thirdvirtual positions, and selecting a fourth virtual position to define athree-dimensional virtual volume spanned by the first, second, third,and fourth positions, the three-dimensional virtual volume being thevirtual representation of the first physical item, the second physicalitem, or real-world space, respectively, and wherein the virtualrepresentation of the first physical item is represented as a solid itemthat is user-manipulatable within the virtual environment.

In this example, a virtual representation of a physical item (e.g.luggage or a box containing an item-to-be-purchased) may be superimposedonto an actual image of the real-world. For example, the virtualrepresentation may be superimposed onto the feed from a camera, e.g. ofa smart device, such that a user may manipulate the virtualrepresentation of the physical item to determine whether, or how, it canfit in the space, by placing it in an image of the actual space (ratherthan a virtual representation thereof as per previously discussedexamples).

This example may have particular utility in, for example, a user wishesto purchase an item from a store and they are able to download datarepresentative of the dimensions of the box in which the item will bedelivered. A user may download the data (which may comprise CAD data) ormay manually enter the dimensions of the box—in either case this willderive the virtual representation of the box in which the user willreceive the item if they purchase it. Then, the user may walk to theirvehicle, open the boot space, and view it through a camera of a smartdevice and superimpose the virtual representation of the box todetermine how and whether it will fit in the boot space.

According to another example there is provided a controller that isconfigured to perform any of the methods described above.

According to another example there is provided a non-transitory andmachine-readable medium having instructions stored thereon, wherein theinstructions, when executed by a processor, are to cause the processorto perform any of the methods as described above.

For example, the instructions, when executed by a processor, may be tocause the processor to derive a first set of dimensions corresponding toa real-world space, derive a second set of dimensions corresponding to afirst physical item in the real-world, derive a virtual representationof the real-world space from the first set of dimensions in a virtualenvironment, derive a virtual representation of the first physical itemfrom the second set of dimensions in the virtual environment, whereinthe virtual representation of the real-world space is represented as ahollow space, and wherein the virtual representation of the firstphysical item is represented as a solid item that is user-manipulatablewithin the virtual environment and the virtual representation of thereal-world space. Deriving, as will be explained below, may comprisemeasuring or manually entering the dimensions, e.g. from a list, orreading the dimensions off the item itself.

In this way, the instructions may cause the processor to create avirtual representation of the first physical item that is moveablethrough the boundaries of the virtual representation of the real-worldspace, for example enabling a user to determine whether and/or how thefirst physical item can fit in the real-world space by manipulating thevirtual representation of the first physical item in the virtualrepresentation of the real-world space.

The instructions, when executed by a processor, may be to cause theprocessor to change the virtual representation of at least one of thefirst physical item and the boundary intersecting the first physicalitem if the virtual representation of the first physical item intersectswith a boundary of the virtual representation of the real-world space.

The instructions, when executed by a processor, cause the processor tomodify the appearance of the visual representation of the first physicalitem or the boundary of the virtual representation of the real-worldspace that intersects with the virtual representation of the firstphysical item.

To derive the first and/or second set of dimensions, the instructions,when executed by a processor, may cause the processor to at least oneof: measure the real-world dimensions of the real-world space and/or thefirst physical item, extract the real-world dimensions of the real-worldspace and/or the first physical item form a dataset; and determine thereal-world dimensions of the real-world space and/or the first physicalitem.

The instructions, when executed by a processor, may cause the processorto place the virtual representation of the first physical item in thevirtual representation of the real-world space.

The instructions, when executed by a processor, may cause the processorto instruct a user to place the first physical item in the real-worldspace according to the virtual configuration of the virtualrepresentation of the first physical item being in the virtualrepresentation of the real-world space.

The instructions, when executed by a processor, may cause the processorto derive a third set of dimensions corresponding to a second physicalitem, and derive a virtual representation of the second physical itemfrom the third set of dimensions in the virtual environment wherein thevirtual representation of the second physical item is represented as asolid item that is user-manipulatable within the virtual environment andthe virtual space.

The instructions, when executed by a processor, may cause the processorto derive the virtual representations of the first physical item andsecond physical item such that they are not permitted to at least oneof: pass through, overly, overlay, clash, and mesh.

The instructions, when executed by a processor, may cause the processorto change the virtual representation of at least one of the firstphysical item, the second physical item and a boundary of the virtualrepresentation of the real-world space, if the virtual representation ofthe first or second physical item, respectively, intersects with theboundary.

The instructions, when executed by a processor, may cause the processorto modify the appearance of the visual representation of the firstphysical item or the boundary of the virtual representation of thereal-world space that intersects with the virtual representation of thefirst physical item if the virtual representation of the second physicalitem intersects with a boundary of the virtual representation of thereal-world space.

The instructions, when executed by a processor, may cause the processorto arrange the virtual representations of the first and second physicalitems so that both items fit within the virtual representation of thereal-world space.

To derive a set of dimensions (or a virtual representation), theinstructions, when executed by a processor, may cause the processor toselect a first position, select a second position to define aone-dimensional line between the first and second positions, select athird position to define a two-dimensional area spanned by the first,second, and third position, and select a fourth position to define athree-dimensional volume spanned by the first, second, third, and fourthpositions, the three-dimensional volume being the virtual representationof the first or second physical item or real-world space (e.g. the linebetween the first and second positions defines a virtual width, the linebetween the first or second and third positions defines a virtual lengthand the line between the first, second, or third, positions and thefourth position defines a virtual depth).

The instructions, when executed by a processor, may cause the processorto at least one of: store real-world dimensions in a database, and storevirtual dimensions, corresponding to real-world dimensions in adatabase.

The instructions, when executed by a processor, may cause the processorto store at least one of the first set of dimensions, the second set ofdimensions, the third set of dimensions, the virtual representation ofthe first physical item, the virtual representation of the real-worldspace, and the virtual representation of the second physical item, in adatabase.

The virtual representation of the first item and/or the representationof the second physical item may not be permitted to cross a virtualboundary of the virtual representation of the real-world space.

The virtual representation of the real-world space may comprise a numberof bounding faces, each face representing a boundary of the virtualspace, with one of those faces being an entrance to the virtual space,the virtual representation of the first item and/or the virtualrepresentation of the second physical item being movable through thisface but not the other faces.

The instructions, when executed by a processor, may cause the processorto create a virtual representation of an item in a virtual environment,and create a virtual representation of a three-dimensional space in thevirtual environment, wherein the virtual representation of the item isuser-manipulatable within the virtual representation of thethree-dimensional space such that a user is able to determine whetherthe virtual representation of the item is able to fit within the virtualrepresentation of the three-dimensional space.

In this way, examples herein relate to using augmented realitytechnology to provide a user friendly way to conduct a virtual packingexercise and avoid instances where an (e.g.) luggage does not fit in aboot space which can cause delays to the user's journey. The augmentedreality provides a way to superimpose a virtual representation of aphysical item onto an image (e.g. a camera feed) of a real-world spaceor a virtual representation of the real-world space. In this way,virtual representations of physical items or spaces may be created fromthe actual items or spaces in the real-world, and may be viewed througha camera feed in conjunction with the real-world items or spaces.

The instructions and computer program product described herein canprovide an easily available app, e.g. on a smart device such as a smartphone, facilitating a quick and easy way to virtually do a luggagepackaging exercise to see the best way to do the packing. Thesimulations of boot-space and the luggage can be saved for future use,further easing out the packing operation. Also, in examples where thereal-world space is a vehicle, the solution measures the access into thevehicle, for example the boot, side doors of the car, rear cargo door orside cargo door, allowing the user to assess whether the luggage canenter the vehicle, given the access space available.

The present disclosure relates to a storing items in a space, e.g. fortransport and/or storage. The figures will exemplify a vehicle as thereal-world space in which an item will be placed. This is for exemplarypurposes only and the space may be other than a vehicle. The vehicle inthe examples that follow is depicted as a van but the principles of thisdisclosure hold for any type of vehicle, such as a motor vehicle (e.g.car, van, truck, motorcycle etc.), industrial or agricultural vehicles(e.g. tractor, forklift, bulldozer, excavator etc), marine vessel,aircraft or any other type of vehicle.

FIG. 1 shows an example method 100 which may comprise acomputer-implemented method and which may comprise a method of loadingat least one item into a space, or a method of loading a plurality ofitems into a space, or a method of optimising at least one item into aspace.

The method 100 comprises step 102 at which a first set of dimensions,corresponding to a real-world space, are derived, e.g. by a processor.At step 104, the method comprises deriving, e.g. by a processor, asecond set of dimensions, the second set of dimensions corresponding toa first physical item in the real-world. The real-world space may be avehicle boot space, or a vehicle cargo area, or a loading area (e.g. theinterior of a shipping container)—any real-world space in which an itemmay be placed and in which it may be intended to place at least oneitem, for example for storage or transportation. The first physical itemmay be an item of cargo or luggage (e.g. a bag) or a package or even aperson etc.

At step 106 the method comprises deriving, e.g. by a processor, avirtual representation of the real-world space from the first set ofdimensions in a virtual environment. At step 108 the method comprisesderiving, e.g. by a processor, a virtual representation of the firstphysical item in the virtual environment. Steps 106 and/or step 108 maycomprise building the virtual environment. The virtual environment maysubstantially resemble a real-world environment. The virtualrepresentation of the first physical item may substantially resemble thefirst physical item. The virtual representation of the real-world spacemay substantially resemble the real-world space.

As will be explained later, block 106 comprises deriving the virtualrepresentation of the real-world space such that the real world space isrepresented in the virtual environment as a hollow space, and block 108comprises deriving the virtual representation of the first physical itemsuch that the first physical item is represented in the virtualenvironment as a solid object that is user-manipulatable within thevirtual environment and within the virtual representation of thereal-world space. This will be discussed in greater detail withreference to some specific examples below.

FIG. 2A illustrates a first physical item 201 that, in this example, isintended to be placed into a real-world space 202 that is, for exemplaryand illustrative purposes, depicted as a suitcase. In other examples,the first item 201 may be a person, other item of luggage (e.g. ahandbag) or cargo such as a box etc. FIG. 2A illustrates a real-worldspace 202 that is, for exemplary and illustrative purposes, depicted asa vehicle boot space. In other examples the space 202 may compriseanother type of space, e.g. a container, cargo area (e.g. of a van ortruck), etc. Therefore, in the real-world example shown schematically inFIG. 2A, the item of luggage 201 is to be placed within the vehicle bootspace 202.

FIG. 2B shows a virtual representation 203 of the first physical item201 and a virtual representation 204 of the real-world space 202, e.g.that have been derived according to a set of dimensions according to themethod 100. In the FIG. 2B example, the representations of the item andthe space are each substantially rectangular (e.g. rectangular prisms).In this example, each representation is a three-dimensionalrepresentations.

The first physical item 201 and the real-world space 202 each have arespective set of dimensions. In other words, as each of 201 and 202occupies a three-dimensional volume each of 201 and 202 has a respectivedepth, width, and height. These dimensions are shown in FIG. 2A. Thefirst physical item 201 has a depth d1, width w1 and height h1 and thereal-world space has a depth d2, width w2 and height h2. It will beappreciated that these measurements may be arbitrarily assigned andtherefore may change with rotation of the item/space—for example inrotating the item by 90 degrees the depth may be re-named the heightetc. Deriving the first and second sets of dimensions (e.g. as in steps102 and 104, respectively, of the method 100) may comprise obtainingthese real-world dimensions. In other examples, deriving the first andsecond respective sets of dimensions may comprise measuring the itemand/or the real-world space. In this example, a smart device mayautomatically measure the dimension of the item, e.g. following thecapture of an image of the item, or may implement automatic measuringsoftware that is capable of determining the dimensions of an item thatthe smart device is viewing through a camera. In other examples,deriving the first and second respective sets of dimensions may compriseextracting the real-world dimensions, e.g. from a database or from animage (e.g. automatically, by a processor). In other examples, derivingthe first and second respective sets of dimensions may comprisedetermining the real-world dimensions, for example by automaticallyimplementing, e.g. by a processor, an algorithm enabling the dimensionsto be determined. In some examples, data may be downloaded (e.g. CADdata that may be used to build the virtual representation of thereal-world space) but may be modified by a user to take into account anymodifications to the real-world space. For example, CAD data for avehicle boot space may be suppled (e.g. available to download) from themanufacturer of that vehicle but a user may have modified the boot spaceof their own vehicle. In this case, after downloading the CAD data forthat general vehicle type the user may then modify the data to take intoaccount any changes that they have made to their vehicle (e.g. placementof a spare tyre, etc.).

Referring again to FIG. 2B, the virtual representations 203 and 205 eachhave an associated set of virtual dimensions. The virtual representationof the first physical item (hereafter the “first virtualrepresentation”) has an associated virtual depth vd1, virtual width vw1,and virtual height vh1, and the virtual representation of the real-worldspace (hereafter the “second virtual representation”) has an associatedvirtual depth vd2, virtual width vw2, and virtual height vw2. Each setof virtual dimensions may substantially correspond to the associatedreal-world set of dimensions. For example, the virtual depth vd1 of thefirst virtual representation may substantially corresponding to thedepth d1 of the first physical item etc. In other words, each virtualdimension may substantially correspond to its associated real-worlddimension. The virtual dimensions may therefore each be in the sameproportion to one another as their associated real-world dimensions. Forexample, if the height h1 of the first physical item is three times itsdepth d1 and twice its width w2 then the virtual height vh1 may be threetimes the virtual depth vd1 and twice the virtual width vw2, etc.

As explained above, and with reference to FIG. 2B, the second virtualrepresentation is a hollow space. In other words, the real-world space202 is virtually represented as a hollow three-dimensional volume 204.In this sense, “hollow” means that another virtual object is able topass through the walls, or faces, of the three-dimensional volume 204.For example, the first virtual representation is a solid object in thevirtual environment. Therefore, the first virtual representation ismoveable in the virtual environment and moveable into, and through, thesecond virtual representation. As will be explained below, this willallow a user to virtually determine whether and how the virtual item canfit in the virtual space and they may then apply those findings to thereal world situation shown in FIG. 2A.

FIGS. 3A and 3B show two example first and second virtualrepresentations, respectively, 303 a,b and 304 a,b. The configuration ofthe first virtual representation within the second virtualrepresentation, depicted in FIGS. 3A and 3B, may be the result ofuser-manipulation of the first virtual representation. In other words, auser may have manipulated (e.g. moved) the first virtual representationto its depicted position within the second virtual representation.

When the first virtual representation “clashes” with the second virtualrepresentation—e.g. when the first virtual representation is moved to aconfiguration where part of the first virtual representation collideswith the part of the second virtual representation, for example wherepart of the first virtual representation intersects with part of thesecond virtual representation—one of the first and second virtualrepresentations may be modified, or their appearance may be changed. Inthe examples shown in FIGS. 3A and 3B the first virtual representationis moved to a configuration within the second virtual representationwhere part of the first virtual representation is intersecting with oneof the faces of the second virtual representation. In these examples thefirst virtual representation is effectively shown to be protruding outof one of the faces of the second virtual representation. In theseexamples, the appearance of at least one of the objects in the virtualenvironment is modified to give a visual indication to the user that thedepicted configuration of the virtual items in the virtual environmentis not possible in the real-world—since in the examples depicted inFIGS. 3A and 3B this would mean that an item of luggage is effectivelydisposed in the middle of a vehicle side panel, for example.

In the FIG. 3A example, the appearance of the first virtual item ismodified. In the FIG. 3B example the appearance of the second virtualitem is modified. In each example this is indicated in the figure byshading, however modifying the appearance may comprise any one, or more,of changing the shape of the virtual item/space, changing the colour ofthe virtual item/space (for example changing the colour of at least oneface of the virtual item or virtual space), displaying warning (e.g. asound or a visual image) to a user.

In the FIG. 3A example the appearance of part of the first virtualrepresentation is modified, for example part of the first virtualrepresentation may be shown as red, red indicating an undesiredconfiguration. In another example all of the first virtualrepresentation may be modified.

In the FIG. 3B example the appearance of one face of the second virtualrepresentation is modified, being the face that intersects the firstvirtual representation. In another example only part of the face may bemodified. As the second virtual representation is a hollow space thefirst virtual representation is able to be moved through, e.g.translate, through the second virtual representation. As such, to avoidthe undesirable configuration shown in FIGS. 3A and 3B, a user may movethe first virtual representation to another configuration, one where itis inside the second virtual representation and does not intersect withany of its boundaries.

Still referring to FIGS. 3A and 3B, but with reference to FIGS. 2A and2B it will be appreciated that one of the faces of the second virtualrepresentation corresponds to the vehicle boot entry (e.g. the boot ofthe vehicle). This face is labelled in FIG. 3A as F1 and the secondvirtual representation shown in FIG. 3A has six faces F1, . . . , F6,with each face corresponding to a real-world side of the vehicle bootspace (202 in FIG. 2A). According to the labels shown in FIG. 3A, faceF3 corresponds to the bottom of the boot space, face F5 corresponds tothe bulkhead in the vehicle, face F6 corresponds to the roof of the bootspace, faces F2 and F4 correspond to the sides of the boot space, andface F1 corresponds to the entrance to the boot space, e.g. followingthe opening of the boot. Face F1 may be designated as an entrance to thesecond virtual representation and hence as an entrance to the virtualspace. In these examples, the first virtual representation may bepermitted to pass through this face without the first and/or secondrepresentations changing or being modified. For example, the depictedchange in the representation of the first virtual representation in FIG.3A and the second virtual representation in FIG. 3B may not occur whenthe first virtual representation intersects the entrance face F1 of thesecond virtual representation, since the first virtual representation isallowed, or permitted, to pass through this entrance face without itbeing flagged to the user, as in the real-world this corresponds to aphysical item moving through an entrance to a boot space, for example.

FIG. 3C shows another example. In this example, the face F4 isdesignated as impenetrable and, if the virtual representation 303 c ofthe physical item of luggage touches the face F4 of the virtualrepresentation 304 c of the real-world space, then the appearance of theface F4 (e.g. at least a portion of the virtual representation 304 c) ismodified. This example provides a visual indication to a user that thevirtual item 303 c is not able to be moved any further to the right ofthe virtual space 304 c, which can assist the user in their virtualpacking operation. In this example therefore, if the virtualrepresentation of an item touches a face of the virtual representationof a real-world space then at least one of a portion of the virtual itemor virtual real-world space is modified. In this example the touchingface F4 has its appearance modified but in another example the virtualitems appearance may be modified.

In this example, at least part of the virtual representation of thereal-world space 304 c (and, in this example specifically one of thefaces, e.g. F4) is designated as not penetrable. In this example, ratherthan the virtual representation of the physical item 303 c passingthrough the face F4 (As in the examples of FIGS. 3A and 3B), when ittouches the face F4 the appearance of the face F4 is changed (e.g.highlighted or changed colour).

In another example, at least part of the virtual representation of thephysical item 303 c may be modified if it touches a nonpenetrable face,e.g. F4. For example, the face(s) of the virtual representation of thephysical item 303 c that are touching a face of the virtualrepresentation of the real-world space may have its appearance modified.In other words, part of the virtual item touching the virtual real-worldspace may appear differently to indicate to the user that the virtualitem touches a boundary of the real-world space. This is shown in by thevirtual representation 307 c of a physical item. In this case, thevirtual item is touching the face F2 and the face of the virtual itemtouching F2 is highlighted (e.g. has its appearance changed). In theFIG. 3C example only part of the representation 307 c is shown modified,but in another example all of the virtual representation 307 c may bemodified.

This example may have use in informing the user that a virtual item hastouched the ceiling of the virtual space, indicating to the user that nofurther items can be provided above the virtual item, in other words,there is no space between the item and the real-world or virtual space.

FIG. 3D shows another example. In this example, two virtualrepresentations 307 d, 303 d, each being a virtual representation ofreal-world physical item, are in a configuration where they aretouching. In this example, virtual item 307 d is stacked on top ofvirtual item 303 d. In this example, the face of at least one of thevirtual item's appearance is modified to indicate to the user that theitems are touching. In one example, only the portion of the face of onevirtual item that touches another item is modified to indicate to theuser how the virtual items are stacked, e.g. where any “free space”lies. For example, if virtual item 307 d were placed over half ofvirtual item 303 d then the appearance of the overlapping half ofvirtual item 303 d may be modified, which shows the user that half ofthe virtual item 303 d is essentially available and another item may bestacked on this half.

Although shown in FIG. 3d when two virtual items are stacked on top ofone another, this may also be performed when two virtual items arestacked side-by-side so that their sides touch. In this example, theappearance of at least one of the touching sides of the object may bemodified to indicate to the user that the items are touching andtherefore that the virtual items can't be moved relative to one anotherso as to create less space between them. This can also assist inindicating to the user that the most space-efficient distribution ofitems is achieved.

In other words, the example of FIG. 3D shows that the appearance of atleast part of a virtual representation of a physical item may bemodified when it is in contact with a virtual representation of anotherphysical item.

FIG. 4 shows an example method 400 which may comprise acomputer-implemented method and which may comprise a method of loadingat least one item into a space, or a method of loading a plurality ofitems into a space. The method 400 may comprise the method 100.

At step 402 the method 400 comprises deriving a first set of dimensionscorresponding to a real-world space, for example as discussed above withreference to block 102 of the method 100. At step 404 the method 400comprises deriving a second set of dimensions corresponding to a firstphysical item in the real-world, for example as discussed above withreference to block 104 of the method 100. At block 406, the method 400deriving a third set of dimensions, the third set of dimensionscorresponding to a second physical item in the real-world. Therefore,the method 400 comprises deriving a plurality of sets of dimensions witheach set of dimensions corresponding to a respective physical item inthe real-world (e.g. that are to be placed in the real-world space).

As indicated by blocks 402 a, 402 b, 402 c, 404 a, 404 b, 404 c, 406 a,406 b, and 406 c, deriving the dimensions may comprise measuring,extracting, and/or determining, as discussed above. For example, thedimensions may be measured, e.g. by a processor implementing automaticmeasuring software, or extracted, e.g. from a database, or determined,e.g. from a representation (e.g. a picture) of a physical item orreal-world space. As indicated by the dotted arrows deriving thedimensions may comprise extracting the dimensions from a database 409,in some examples. In other examples, once the dimensions have beenderived they may be stored in the database 409, e.g. for later use. Thedatabase may store a set of dimensions for later extraction. Thedatabase may store a set of dimensions corresponding to a physical itemdifferently, or in a different part of the database, to a set ofdimensions corresponding to a real-world space. The database may store aset of dimensions together with metadata (e.g. classification metadata)that describes whether the dimensions corresponds to a real-world itemor real-world space. In this way, when a set of dimensions are retrievedit can be determined whether those dimensions represent a physical item(in which case the associated virtual representation will comprise asolid object in the virtual environment) or a real-world space (in whichcase the associated virtual representation will comprise a hollow spacein the virtual environment).

In other words, the database may comprise two distinct “containers”, orparts, and virtual representations (e.g. the dimensions thereof) may besaved in one of these containers. One container may be forrepresentations of “items” (which are to be depicted as solid objects)and another may be for representation of “spaces” (which are to bedepicted as hollow spaces that the items can move through). A user isable to store a virtual representation (e.g. a set of dimensions thatcharacterise the virtual representation) in either container in which itwill be saved as, for example, ITEM 1, ITEM 2, . . . , or SPACE 1, SPACE2, etc. This designation may be automatic. For example, where a userstarts capturing (e.g. manually by tapping on their smartphone todesignate the corners and/or the edges of an item or space as will bedescribed later with reference to FIGS. 6a-d and 7a-d ) before doing soa user may input that they are capturing the dimensions of an item or aspace and, when captured, the dimensions may be stored in theappropriate container of the database. For example, the system mayprevent captured dimensions for an “item” being saved as a “space”. Inthis example, a user may click on a “vehicle boot space” icon (or“luggage” icon) before capturing the dimensions of a real-world bootspace and, clicking on the “boot space” (or “luggage”) icon may causethe dimensions to be stored in the “space” (or “item”) part of thedatabase (to then be represented as hollow (or solid) when retrieved).

At step 408 the method comprises deriving a virtual representation ofthe real-world space from the first set of dimensions in a virtualenvironment, for example as discussed above with respect to step 106 ofthe method 100. At step 410 the method comprises deriving a virtualrepresentation of the first physical item in the virtual environment,for example as discussed above with respect to step 108 of the method100. At step 412 the method comprises deriving a virtual representationof the second physical item in the virtual environment (for example asdiscussed above with respect to step 108 of the method 100 but for adifferent real-world physical item). Therefore, steps 410 and 412 of themethod 400 comprise deriving a plurality of virtual representations,each representation being of a physical item in the real-world. Asdescribed above, the virtual representation of the real-world space maycomprise a number of faces bounding a three-dimensional virtual volume.As indicated by step 408 a, step 408 may comprise designating one ofthose faces to be the virtual entrance to the virtual volume. This maybe done automatically. The designated “entrance face” may correspond toa real-world entrance to the real-world volume.

At step 414 the method determines whether the virtual representation ofthe first and/or second physical item intersects the virtualrepresentation of the real-world space. For example, as described above,the virtual representation of the real-world space may comprise a numberof faces bounding a three-dimensional virtual volume, and step 414 maydetermine whether the virtual representation of the first and/or secondphysical item intersects one of the faces of the virtual representationof the real-world space.

The virtual volume that is the virtual representation of the real-worldspace may occupy a number of virtual three-dimensional coordinates (e.g.(x,y,z) coordinates in the three-dimensional virtual space). Eachassociated face of the virtual volume may therefore have a set ofcoordinates that define the face. The virtual representation of aphysical item may also have associated coordinates in the virtualenvironment and when at least one coordinate of the coordinates of thevirtual representation of the physical item are the same as at least onecoordinate of the coordinates of the virtual representation of thereal-world space then it may be determined that the virtual itemintersects a face of the virtual space. In other words, step 414 maycomprise determining whether at least one coordinate of the coordinatesof the virtual representation of the physical item are the same as atleast one coordinate of the coordinates of the virtual representation ofthe real-world space

At step 416 it is determined whether the face that is intersected by thefirst and/or second physical item is the face that is designated to bethe entrance to the virtual representation of the real-world space and,if it is not the face designated as the entrance, then the methodproceeds to step 418 at which the appearance of the virtualrepresentation of the real-world space and/or the virtual representationof whichever one, or both, of the first and second physical items ismodified or changed, e.g. as described above, to provide a visualindication to a user that the depicted configuration is not achievablein the real-world. Step 416 may comprise determining whether thecoordinates of the face that interests the virtual item is designated asan entrance. Designating the face may comprise designating at least onecoordinate defining the face.

FIGS. 5a and 5b show an example virtual environment where four virtualobjects (e.g. virtual representations of physical items) 501-504 aredepicted with a virtual space (e.g. a virtual representation of areal-world space) 505. In FIG. 5a each virtual representation of eachphysical item is shown remote from the virtual representation of thereal-world space, which may correspond to a configuration of thephysical items in the real-world—for example, a user may be looking atfour physical items (to which the virtual representations 501-504correspond) and considering how best to fit them into a real-world space(to which the representation 505 corresponds), e.g. how to best fit fouritems of luggage into a vehicle boot space.

FIG. 5b shows the virtual environment where the plurality of virtualrepresentations 501-504 are fit into the virtual space 505. To arrive atthe FIG. 5b configuration a user may have individually moved eachvirtual representation 501-504 into the virtual space 505 in theconfiguration shown in FIG. 5b . The user may have rotated one of thevirtual representations 501-504 to arrive at the configuration shown inFIG. 5b . Each virtual representation 501-504 is thereforeuser-manipulatable, user-rotatable, user-translatable (e.g. in an out ofthe virtual space 505). In another example, the FIG. 5b configurationmay be the result of implementing, e.g. by a processor, an automaticpacking algorithm which may include an optimisation algorithm. Forexample, a processor may be configured to move the virtualrepresentations 501-504 into the virtual space 505 in such a way tooptimise a given parameter. For example, the parameter may be related toa weight distribution (e.g. an optimum weight distribution) or theparameter may be related to a maximum number of items that can fit intothe space. For example, if there are over the maximum number of itemsthat can fit into the space then a processor may be configured to movethe virtual representations of a subset of a plurality of items into thevirtual space so that the subset represents the maximum number of theplurality of items that can fit into the virtual space. A user may thenadopt that configuration in the real-world. Of course, in other examplesthe configuration may be completely determined by a user.

FIGS. 6A-6D and FIGS. 7A-7D respectively show one example of deriving avirtual representation of a physical item 600 and a real-world space700.

FIGS. 6A-6D show a physical item 600 which is shown for example purposesonly as an item of luggage. FIGS. 6A-6D show an example way of derivinga set of dimensions that correspond to the real-world dimensions of theitem 600 and/or the virtual representation of the item 600. To derivethe a set of dimensions that correspond to the real-world dimensions ofthe item 600 (not labelled) and/or the virtual representation of theitem 600, a first position X1 may be selected (FIG. 6A). Then, a secondposition X2 may be selected (FIG. 6B). This defines a one-dimensionalline L1 between the two positions X1 and X2. The first position X1 maybe selected such that it is at one extremum of the item, e.g. a firstextreme point, e.g. an extremum of one of its dimensions, e.g. at acorner of an item. In this example, the first position X1 is selected tobe approximately at the lower-front-left-most corner. The secondposition X2 may be selected such that it is at another extremum of theitem, e.g. a second extreme point, e.g. an extremum of one of itsdimensions, e.g. at a corner of an item. In this example, the secondposition X2 is selected to be approximately at thelower-front-right-most corner of the item. The line L1 is therefore avirtual dimension that corresponds to the real-world width w1 (withreference to FIG. 2) of the item 600.

Then (FIG. 6C), a third position X3 may be selected. This defines atwo-dimensional area A1 between the three positions X1, X2, and X3. Thethird position X3 may be selected such that it is at one extremum of theitem, e.g. a third extreme point, e.g. an extremum of one of itsdimensions, e.g. at a corner of an item. In this example, the thirdposition X3 is selected to be approximately at the lower-rear-right-mostcorner. This also defines another virtual dimension D1, being the lineconnecting points X2 and X3, being a virtual dimension that correspondsto the real-world depth d1 (with reference to FIG. 2) of the item 600.Then (FIG. 6D), a fourth position X4 may be selected. This defines athree-dimensional volume V1 between the three positions X1, X2, X3, andX4. The fourth position X4 may be selected such that it is at oneextremum of the item, e.g. a fourth extreme point, e.g. an extremum ofone of its dimensions, e.g. at a corner of an item. In this example, thefourth position X4 is selected to be approximately at theupper-rear-left-most corner. This also defines another virtual dimensionH1, being a virtual dimension that corresponds to the real-world heighth1 (with reference to FIG. 2) of the item 600.

The three-dimensional volume spanned by the four points X1, X2, X3, andX4—V1 in FIG. 6D—may be the virtual representation of the physical item600. In other words, the virtual representation of the physical item 600may comprise the three-dimensional volume V1 as shown in FIG. 6D. Thevirtual volume V1 may be defined automatically, e.g. by a processor or acomputer implementing a computer program, or may be defined manually bya user. In this latter example, a user may be viewing the item ofluggage 600 through a camera (such as via the camera on a smart devicesuch as a smart phone) and may manually designate the positions X1-X4 bytapping on the screen of the smart device and/or by dragging theirfinger from one point on the screen to another to define the positions.In another example, a user may view the item 600 through a camera andsoftware may be automatically derive the representation by the processdescribed above (e.g. automatically designating the first position,second position, line, etc.).

FIGS. 7A-7D show a physical item 700 which is shown for example purposesonly as an vehicle boot space. FIGS. 7A-7D show an example way ofderiving a set of dimensions that correspond to the real-worlddimensions of the real-world space 700 and/or the virtual representationof the space 700. To derive the a set of dimensions that correspond tothe real-world dimensions of the real-world space 700 (not labelled)and/or the virtual representation of the space 700, a first position Y1may be selected (FIG. 7A). Then, a second position Y2 may be selected(FIG. 7B). This defines a one-dimensional line L2 between the twopositions Y1 and Y2. The first position Y1 may be selected such that itis at one extremum of the item, e.g. a first extreme point, e.g. anextremum of one of its dimensions, e.g. at a corner of an item. In thisexample, the first position Y1 is selected to be approximately at thelower-front-left-most corner. The second position Y2 may be selectedsuch that it is at another extremum of the item, e.g. a second extremepoint, e.g. an extremum of one of its dimensions, e.g. at a corner of anitem. In this example, the second position Y2 is selected to beapproximately at the lower-front-right-most corner of the item. The lineL2 is therefore a virtual dimension that corresponds to the real-worldwidth w2 (with reference to FIG. 2) of the space 700.

Then (FIG. 7C), a third position Y3 may be selected. This defines atwo-dimensional area A2 between the three positions Y1, Y2, and Y3. Thethird position Y3 may be selected such that it is at one extremum of theitem, e.g. a third extreme point, e.g. an extremum of one of itsdimensions, e.g. at a corner of an item. In this example, the thirdposition Y3 is selected to be approximately at the lower-rear-left-mostcorner. This also defines another virtual dimension D2, being the lineconnecting points X1 and X3, being a virtual dimension that correspondsto the real-world depth d2 (with reference to FIG. 2) of the space 700.Then (FIG. 6D), a fourth position Y4 may be selected. This defines athree-dimensional volume V2 between the three positions Y1, Y2, Y3, andY4. The fourth position Y4 may be selected such that it is at oneextremum of the item, e.g. a fourth extreme point, e.g. an extremum ofone of its dimensions, e.g. at a corner of an item. In this example, thefourth position Y4 is selected to be approximately at theupper-front-left-most corner. This also defines another virtualdimension H2, being a virtual dimension that corresponds to thereal-world height h2 (with reference to FIG. 2) of the space 700.

The three-dimensional volume spanned by the four points Y1, Y2, Y3, andY4—V2 in FIG. 7D—may be the virtual representation of the real-worldspace 700. In other words, the virtual representation of the real-worldspace 700 may comprise the three-dimensional volume V2 as shown in FIG.7D. The virtual volume V2 may be defined automatically, e.g. by aprocessor or a computer implementing a computer program, or may bedefined manually by a user. In this latter example, a user may beviewing the vehicle boot space 700 through a camera (such as via thecamera on a smart device such as a smart phone) and may manuallydesignate the positions Y1-Y4 by tapping on the screen of the smartdevice and/or by dragging their finger from one point on the screen toanother to define the positions. In another example, a user may view thespace 700 through a camera and software may be automatically derive therepresentation by the process described above (e.g. automaticallydesignating the first position, second position, line, etc.)

Referring again to FIG. 4, the dotted arrows indicate that storage, orretrieval, of the first set of dimensions for a first item, second item,or real-world space. In examples where a set of dimensions is stored,the dimensions L1, D1, H1 (with reference to FIG. 6) or L2, D2, H2 (withreference to FIG. 7) may be stored in the database. As stated above, aset of dimensions may be stored with an associated tag designating thedimensions as “item” (to be represented virtually as solid) or as“space” (to be represented as hollow). To build the virtualrepresentation of the item or space, the three-dimensional volume V1, orV2, may be built from these dimensions, either prior to or after theirstorage. In examples where a set of dimensions is retrieved, thedimensions L1, D1, H1 (with reference to FIG. 6) or L2, D2, H2 (withreference to FIG. 7) may be retrieved from the database. Again, to buildthe virtual representation of the item or space, the three-dimensionalvolume V1, or V2, may be built from these dimensions following theirretrieval. The retrieval of a set of dimensions may comprise the readingof the associated tag to determine whether the dimensions relate to an“item” or to a “space”. In either example, when building the virtualrepresentation metadata describing the classification of a set ofdimensions as “item” or “space” may be checked and, if the set ofdimensions is tagged as “item” then the virtual representation may bebuilt from the dimensions as a solid object and, if the set ofdimensions is tagged as a “space” the virtual representation may bebuilt from the dimensions as a hollow space. Where a set of dimensionsis tagged as “space” building the virtual representation may comprisedesignating one face of the virtual volume as the “entrance”—e.g.designating the face of the volume V2, shown in FIG. 7D, thatcorresponds to the vehicle boot as the entrance to the volume V2.

Deriving a representation (e.g. blocks 408, 410, 412) of the method 400of FIG. 4, may comprise building the representation—for example in theway as described above with reference to FIGS. 6A-6D (for an item) andFIGS. 7A-7D (for a space). Deriving a representation may compriseretrieving associated dimensions. Deriving the dimensions may beperformed concurrently with deriving the representation of the item orspace having the dimensions. In other words, steps 402 and 408 may beperformed concurrently, steps 404, and 410 may be performedconcurrently, and steps 406 and 412 may be performed concurrently. Steps401, 404, 406, 408, 410, 412 may be performed concurrently. Step 408 amay be performed concurrently with step 408.

In this way, known dimensions for types of items and/or spaces may bestored in the database (e.g. as CAD data) and may then be retrieved tocreate the virtual representation. In this way to create a virtualrepresentation a user may not need to measure an item or space (e.g. maynot need to derive the dimensions themselves) but can access a databaseof stored dimensions for unmeasured items or spaces.

This effectively allows a user to determine whether certain items fit incertain spaces without actually possessing them, or even being inproximity to them. For example, as a theoretical exercise a user maydownload data relating to a number of boxes (e.g. containing items thatthe user is intending to purchase) and to download data relating to thevehicle boot space of a vehicle that the user does not have (e.g. theyown the vehicle but it's at another, remote, location or they do not ownthe vehicle at all) and build a virtual representation of each box andthe vehicle boot space. The user may then virtually determine whether,and how, the boxes may fit into the boot space. In these examples thedimensions of the boxes may be downloaded, or otherwise obtained, from astore selling the products and the dimensions of the boot space may bedownloaded, or otherwise obtained, from the manufacturer of the vehicle.

In yet another example, the dimensions may be manually entered by auser. For example, the user may manually measure the dimensions of anitem and/or a space (e.g. using a tape measure or any other suitablemeasuring means) and may then input the measured dimensions to derivethe virtual representation of the item and/or space. In other examplesthe use may real the dimensions of an item or space (e.g. from a list orread off of packaging) and manually enter those dimensions to derive thevirtual representation.

FIG. 8 shows an example implementation 800 of some of the examplesdescribed above. FIG. 8 shows a smart device 800 that comprises acomputer program that when executed on the smart device causes the smartdevice to implement the method 100 or 400 as described above. The smartdevice 800 may comprise a processor and/or a machine-readable mediumhaving instructions stored thereon that, when executed by the processorof the smart device, causes the smart device to implement the method 100or 400 as described above.

FIG. 9 shows an example non-transitory and machine-readable medium 902in associated with a processor 904. The medium 902 comprises a set ofinstructions 906 stored thereon which, when executed by the processor904 cause the processor 904 to perform a series of tasks. For example,the instructions 906, when executed by the processor 904, may cause theprocessor 904 to perform any one, or a combination of, the steps of theexample methods 100 or 400.

Examples may be provided according to any one of the following numberedstatements.

Statement 1. A method comprising:

-   -   deriving a first set of dimensions corresponding to a real-world        space;    -   deriving a second set of dimensions corresponding to a first        physical item in the real-world;    -   deriving a virtual representation of the real-world space from        the first set of dimensions in a virtual environment;    -   deriving a virtual representation of the first physical item        from the second set of dimensions in the virtual environment;        wherein the virtual representation of the real-world space is        represented as a hollow space, and wherein the virtual        representation of the first physical item is represented as a        solid item that is user-manipulatable within the virtual        environment and the virtual representation of the real-world        space, for example such that the virtual representation of the        first physical item is moveable through the boundaries of the        virtual representation of the real-world space, for example        enabling a user to determine whether and/or how the first        physical item can fit in the real-world space by manipulating        the virtual representation of the first physical item in the        virtual representation of the real-world space.

Statement 2. A method according to Statement 1, wherein, if the virtualrepresentation of the first physical item intersects with a boundary ofthe virtual representation of the real-world space, the method furthercomprises:

-   -   changing the virtual representation of at least one of the first        physical item and the boundary intersecting the first physical        item.

Statement 3. A method according to Statement 2, wherein changing thevisual representation comprises:

-   -   modifying the appearance of the visual representation of the        first physical item or the boundary of the virtual        representation of the real-world space that intersects with the        virtual representation of the first physical item.

Statement 4. A method according to any preceding Statement wherein

-   -   deriving the first and/or second set of dimensions comprises at        least one of: measuring the real-world dimensions of the        real-world space and/or the first physical item, extracting the        real-world dimensions of the real-world space and/or the first        physical item form a dataset; and determining the real-world        dimensions of the real-world space and/or the first physical        item

Statement 4. A method according to any preceding Statement, furthercomprising:

-   -   placing the virtual representation of the first physical item in        the virtual representation of the real-world space.

Statement 5. A method according to Statement 4, further comprising:

-   -   instructing a user to place the first physical item in the        real-world space according to the virtual configuration of the        virtual representation of the first physical item being in the        virtual representation of the real-world space.

Statement 6. A method according to any preceding Statement, furthercomprising:

-   -   deriving a third set of dimensions corresponding to a second        physical item;    -   deriving a virtual representation of the second physical item        from the third set of dimensions in the virtual environment        wherein the virtual representation of the second physical item        is represented as a solid item that is user-manipulatable within        the virtual environment and the virtual space.

Statement 7. A method according to Statement 6, wherein the virtualrepresentations of the first physical item and second physical item arenot permitted to at least one of: pass through, overly, overlay, clash,and mesh.

Statement 8. A method according to Statement 6 or 7, wherein, if thevirtual representation of the second physical item intersects with aboundary of the virtual representation of the real-world space, themethod further comprises:

-   -   changing the virtual representation of at least one of the        second physical item and the boundary intersecting the first        physical item, which may further comprise:    -   modifying the appearance of the visual representation of the        second physical item or the boundary of the virtual        representation of the real-world space that intersects with the        virtual representation of the second physical item.

Statement 9. A method according to any of Statements 6-8, furthercomprising:

-   -   arranging (e.g. automatically arranging, e.g. by a processor or        control unit) the virtual representations of the first and        second physical items so that both items fit within the virtual        representation of the real-world space.

Statement 10. A method according to any preceding Statement wherein, toderive a set of dimensions, the method further comprises:

-   -   selecting a first position;    -   selecting a second position to define a one-dimensional line        between the first and second positions;    -   selecting a third position to define a two-dimensional area        spanned by the first, second, and third position; and    -   selecting a fourth position to define a three-dimensional volume        spanned by the first, second, third, and fourth positions, the        three-dimensional volume being the virtual representation of the        first or second physical item or real-world space (e.g. the line        between the first and second positions defines a virtual width,        the line between the first or second and third positions defines        a virtual length and the line between the first, second, or        third, positions and the fourth position defines a virtual        depth).

Statement 11. A method according to any preceding Statement, furthercomprising at least one of: storing real-world dimensions in a database,and storing virtual dimensions, corresponding to real-world dimensions,in a database.

Statement 12. A method according to any preceding Statement, furthercomprising:

-   -   storing at least one of the first set of dimensions, the second        set of dimensions, the third set of dimensions, the virtual        representation of the first physical item, the virtual        representation of the real-world space, and the virtual        representation of the second physical item, in a database.

Statement 13. A method according to any preceding Statement, wherein thevirtual representation of the first item and/or the representation ofthe second physical item is not permitted to cross a virtual boundary ofthe virtual representation of the real-world space.

Statement 14. A method according to Statement 13, wherein the virtualrepresentation of the real-world space comprises a number of boundingfaces, each face representing a boundary of the virtual space, with oneof those faces being an entrance to the virtual space, the virtualrepresentation of the first item and/or the virtual representation ofthe second physical item being movable through this face but not theother faces.

Statement 15. A method according to Statement 13 wherein a user is ableto designate the face representing the entrance to the virtual space.

Statement 16. A method of building a virtual environment, the methodcomprising:

-   -   creating a virtual representation of an item in a virtual        environment, and    -   creating a virtual representation of a three-dimensional space        in the virtual environment,        wherein the virtual representation of the item is        user-manipulatable within the virtual representation of the        three-dimensional space such that a user is able to determine        whether the virtual representation of the item is able to fit        within the virtual representation of the three-dimensional        space.

Statement 17. A controller for a vehicle, the controller beingconfigured to perform the method according to any one of Statements1-16.

Statement 18. A non-transitory computer-readable medium havinginstructions stored thereon wherein the instructions, when executed by aprocessor, cause the processor to:

-   -   derive a first set of dimensions corresponding to a real-world        space;    -   derive a second set of dimensions corresponding to a first        physical item in the real-world;    -   derive a virtual representation of the real-world space from the        first set of dimensions in a virtual environment;    -   derive a virtual representation of the first physical item from        the second set of dimensions in the virtual environment;        wherein the virtual representation of the real-world space is        represented as a hollow space, and wherein the virtual        representation of the first physical item is represented as a        solid item that is user-manipulatable within the virtual        environment and the virtual representation of the real-world        space, for example such that the virtual representation of the        first physical item is moveable through the boundaries of the        virtual representation of the real-world space, for example        enabling a user to determine whether and/or how the first        physical item can fit in the real-world space by manipulating        the virtual representation of the first physical item in the        virtual representation of the real-world space.

Statement 19. A non-transitory computer-readable medium according toStatement 18, wherein the instructions, when executed by a processor,cause the processor to:

-   -   change the virtual representation of at least one of the first        physical item and the boundary intersecting the first physical        item if the virtual representation of the first physical item        intersects with a boundary of the virtual representation of the        real-world space.

Statement 20. A non-transitory computer-readable medium according toStatement 19, wherein, to change the representation, the instructions,when executed by a processor, cause the processor to:

-   -   modify the appearance of the visual representation of the first        physical item or the boundary of the virtual representation of        the real-world space that intersects with the virtual        representation of the first physical item.

Statement 21. A non-transitory computer-readable medium according to anyof Statements 18 or 19 wherein, to derive the first and/or second set ofdimensions, the instructions, when executed by a processor, cause theprocessor to at least one of:

-   -   measure the real-world dimensions of the real-world space and/or        the first physical item, extract the real-world dimensions of        the real-world space and/or the first physical item form a        dataset; and determine the real-world dimensions of the        real-world space and/or the first physical item

Statement 22. A non-transitory computer-readable medium according to anyof Statements 18-21, wherein the instructions, when executed by aprocessor, cause the processor to:

-   -   place the virtual representation of the first physical item in        the virtual representation of the real-world space.

Statement 23. A non-transitory computer-readable medium according toStatement 21, wherein the instructions, when executed by a processor,cause the processor to:

-   -   instruct a user to place the first physical item in the        real-world space according to the virtual configuration of the        virtual representation of the first physical item being in the        virtual representation of the real-world space.

Statement 24. A non-transitory computer-readable medium according to anyof Statements 18-23, wherein the instructions, when executed by aprocessor, are to cause the processor to:

-   -   derive a third set of dimensions corresponding to a second        physical item;    -   derive a virtual representation of the second physical item from        the third set of dimensions in the virtual environment wherein        the virtual representation of the second physical item is        represented as a solid item that is user-manipulatable within        the virtual environment and the virtual space.

Statement 25. A non-transitory computer-readable medium according toStatement 24, wherein the instructions, when executed by a processor,cause the processor to derive the virtual representations of the firstphysical item and second physical item such that they are not permittedto at least one of: pass through, overly, overlay, clash, and mesh.

Statement 26. A non-transitory computer-readable medium according toStatement 24 or 25, wherein, the instructions, when executed by aprocessor, cause the processor to:

-   -   change the virtual representation of at least one of the first        physical item, the second physical item and a boundary of the        virtual representation of the real-world space, if the virtual        representation of the first or second physical item,        respectively, intersects with the boundary.

Statement 27. A non-transitory computer-readable medium according toStatement 26, wherein the instructions, when executed by a processor,cause the processor to:

-   -   modify the appearance of the visual representation of the first        physical item or the boundary of the virtual representation of        the real-world space that intersects with the virtual        representation of the first physical item if the virtual        representation of the second physical item intersects with a        boundary of the virtual representation of the real-world space.

Statement 28. A non-transitory computer-readable medium according to anyof Statements 24-27, wherein the instructions, when executed by aprocessor, cause the processor to:

-   -   arrange the virtual representations of the first and second        physical items so that both items fit within the virtual        representation of the real-world space.

Statement 29. A non-transitory computer-readable medium according to anyof Statements 18-28 wherein, to derive a set of dimensions, theinstructions, when executed by a processor, cause the processor to:

-   -   select a first position;    -   select a second position to define a one-dimensional line        between the first and second positions;    -   select a third position to define a two-dimensional area spanned        by the first, second, and third position; and    -   select a fourth position to define a three-dimensional volume        spanned by the first, second, third, and fourth positions, the        three-dimensional volume being the virtual representation of the        first or second physical item or real-world space (e.g. the line        between the first and second positions defines a virtual width,        the line between the first or second and third positions defines        a virtual length and the line between the first, second, or        third, positions and the fourth position defines a virtual        depth).

Statement 30. A non-transitory computer-readable medium according to anyof Statements 18-29, wherein the instructions, when executed by aprocessor, cause the processor to at least one of: store real-worlddimensions in a database, and store virtual dimensions, corresponding toreal-world dimensions in a database.

Statement 31. A non-transitory computer-readable medium according to anyof Statements 18-30, wherein the instructions, when executed by aprocessor, cause the processor to:

-   -   store at least one of the first set of dimensions, the second        set of dimensions, the third set of dimensions, the virtual        representation of the first physical item, the virtual        representation of the real-world space, and the virtual        representation of the second physical item, in a database.

Statement 32. A non-transitory computer-readable medium according to anyof Statements 18-31, wherein the virtual representation of the firstitem and/or the representation of the second physical item is notpermitted to cross a virtual boundary of the virtual representation ofthe real-world space.

Statement 33. A non-transitory computer-readable medium according toStatement 32, wherein the virtual representation of the real-world spacecomprises a number of bounding faces, each face representing a boundaryof the virtual space, with one of those faces being an entrance to thevirtual space, the virtual representation of the first item and/or thevirtual representation of the second physical item being movable throughthis face but not the other faces.

Statement 34. A non-transitory and machine-readable medium havinginstructions stored thereon wherein the instructions, when executed by aprocessor, cause the processor to:

-   -   create a virtual representation of an item in a virtual        environment, and    -   create a virtual representation of a three-dimensional space in        the virtual environment,        wherein the virtual representation of the item is        user-manipulatable within the virtual representation of the        three-dimensional space such that a user is able to determine        whether the virtual representation of the item is able to fit        within the virtual representation of the three-dimensional        space.

While the present disclosure has been illustrated and described indetail in the drawings and foregoing description, such illustration anddescription are to be considered illustrative or exemplary and notrestrictive; the invention is not limited to the disclosed embodiments.Various alternative examples are discussed through the detaileddescription. Other variations to the disclosed embodiments can beunderstood and effected by those skilled in the art in practicing theclaimed invention, from a study of the drawings, the disclosure, and theappended claims. In the claims, the word “comprising” does not excludeother elements or steps, and the indefinite article “a” or “an” does notexclude a plurality. Any reference signs in the claims should not beconstrued as limiting the scope.

The invention claimed is:
 1. A computer comprising a processor and anon-transitory medium storing instructions executable by the processorto: derive a first set of dimensions corresponding to a real-worldspace; derive a second set of dimensions corresponding to a firstphysical item in the real-world; derive a third set of dimensionscorresponding to a second physical item; derive a virtual representationof the real-world space from the first set of dimensions in a virtualenvironment, the virtual representation of the real-world spacerepresented as a hollow space; derive a virtual representation of thefirst physical item from the second set of dimensions in the virtualenvironment, the virtual representation of the first physical itemrepresented as a solid item that is user-manipulatable within thevirtual environment and the virtual representation of the real-worldspace; derive a virtual representation of the second physical item fromthe third set of dimensions in the virtual environment, the virtualrepresentation of the second physical item represented as a solid itemthat is user-manipulatable within the virtual environment and thevirtual space; and not permit the virtual representations of the firstand second physical items to pass through one another.
 2. The computerof claim 1, wherein the instructions include instructions to instruct auser to place the first physical item in the real-world space accordingto a virtual configuration of the virtual representation of the firstphysical item in the virtual representation of the real-world space. 3.The computer of claim 1, wherein the instructions include instructionsto, if the virtual representation of the first physical item intersectswith a boundary of the virtual representation of the real-world space,modify the virtual representation of at least one of the first physicalitem and the boundary intersecting the first physical item.
 4. Thecomputer of claim 1, wherein the virtual representation of thereal-world space comprises a number of bounding faces defining thehollow space as a three-dimensional volume therebetween bounded by thebounding faces, wherein each face represents a boundary of the virtualrepresentation of the real-world space, and wherein at least one of thebounding faces represents an entrance to the virtual representation ofthe real-world space, and wherein the instructions include instructionto, if the virtual representation of the first physical item intersectswith a bounding face of the virtual representation of the real-worldspace, modify the virtual representation of at least one of the firstphysical item and the bounding face intersecting the first physicalitem, unless the bounding face is the entrance to the virtualrepresentation in which case the appearance of the virtualrepresentation of a physical item and/or the virtual representation ofthe real-world space is not modified.
 5. The computer of claim 4,wherein the instructions include instructions to designate one of thebounding faces of the virtual representation of the real-world space aspenetrable or impenetrable by the virtual representation of the firstphysical item.
 6. The computer of claim 1, wherein deriving the firstand/or second set of dimensions comprises at least one of: measuring thereal-world dimensions of the real-world space and/or the first physicalitem; extracting the real-world dimensions of the real-world spaceand/or the first physical item form a dataset; and determining thereal-world dimensions of the real-world space and/or the first physicalitem.
 7. The computer of claim 1, wherein the instructions includeinstructions to arrange the virtual representations of the first andsecond physical items so that both items fit within the virtualrepresentation of the real-world space.
 8. The computer of claim 1,wherein the instructions include instructions to derive a set ofdimensions of the first physical item, the second physical item, or thereal-world space by: selecting a first position; selecting a secondposition to define a one-dimensional line between the first and secondpositions; selecting a third position to define a two-dimensional areaspanned by the first, second, and third position; and selecting a fourthposition to define a three-dimensional volume spanned by the first,second, third, and fourth positions, wherein at least one dimension inthe set of dimensions is the length of a line between two of the fourpositions.
 9. The computer of claim 1, wherein the instructions includeinstructions to derive a virtual representation of the first physicalitem, the second physical item, or the real-world space by: selecting avirtual first position in the virtual environment; selecting a virtualsecond position in the virtual environment to define a one-dimensionalvirtual line between the first and second virtual positions; selecting avirtual third position to define a two-dimensional virtual area spannedby the first, second, and third virtual positions; and selecting afourth virtual position to define a three-dimensional virtual volumespanned by the first, second, third, and fourth positions, thethree-dimensional virtual volume being the virtual representation of thefirst physical item, the second physical item, or real-world space. 10.The computer of claim 1, wherein the instructions include instructionsto store at least one of the first set of dimensions, the second set ofdimensions, the third set of dimensions, the virtual representation ofthe first physical item, the virtual representation of the real-worldspace, or the virtual representation of the second physical item, in adatabase.
 11. The computer of claim 10, wherein the instructions includeinstructions to store the dimensions and virtual representation withmetadata describing whether the dimensions or the representationdescribe a physical item or a real-world space.
 12. The computer ofclaim 1, wherein the instructions include instructions to: derive aplurality of sets of dimensions, each set of dimensions corresponding toa respective physical item; and derive a plurality of virtualrepresentations, each virtual representation of the plurality being avirtual representation of a respective physical item, from a respectiveset of dimensions, wherein each virtual representation of the physicalitems is represented as a solid item that is user-manipulatable withinthe virtual environment and the virtual representation of the real-worldspace.
 13. The computer of claim 1, wherein the instructions includeinstructions to automatically arrange the plurality of virtualrepresentations of the physical items in the virtual representation ofthe real-world space such that a parameter is optimised.
 14. A computercomprising a processor and a non-transitory medium storing instructionsexecutable by the processor to: derive a set of dimensions correspondingto a first physical item in the real-world and deriving, from the set ofdimensions, a virtual representation of the first physical item in avirtual environment by: selecting a virtual first position in thevirtual environment; selecting a virtual second position in the virtualenvironment to define a one-dimensional virtual line between the firstand second virtual positions; selecting a virtual third position todefine a two-dimensional virtual area spanned by the first, second, andthird virtual positions; and selecting a fourth virtual position todefine a three-dimensional virtual volume spanned by the first, second,third, and fourth positions, the three-dimensional virtual volume beingthe virtual representation of the first physical item, the secondphysical item, or real-world space, respectively, wherein the virtualrepresentation of the first physical item is represented as a solid itemthat is user-manipulatable within the virtual environment.
 15. A methodcomprising: deriving a first set of dimensions corresponding to areal-world space; deriving a second set of dimensions corresponding to afirst physical item in the real-world space; deriving a virtualrepresentation of the real-world space from the first set of dimensionsin a virtual environment, the virtual representation of the real-worldspace represented as a hollow space, the virtual representation of thereal-world space comprises a number of bounding faces defining thehollow space as a three-dimensional volume therebetween bounded by thebounding faces, each bounding face representing a boundary of thevirtual representation of the real-world space, at least one of thebounding faces represents an entrance to the virtual representation ofthe real-world space; deriving a virtual representation of the firstphysical item from the second set of dimensions in the virtualenvironment, the virtual representation of the first physical itemrepresented as a solid item that is user-manipulatable within thevirtual environment and the virtual representation of the real-worldspace; and when the virtual representation of the first physical itemintersects with a bounding face of the virtual representation of thereal-world space, modifying the virtual representation of at least oneof the first physical item and the bounding face intersecting the firstphysical item, unless the bounding face is the entrance to the virtualrepresentation in which case the appearance of the virtualrepresentation of the first physical item and the virtual representationof the real-world space are not modified.
 16. A method according toclaim 15, wherein, to derive a virtual representation of the firstphysical item, the second physical item, and/or the real-world space,the method further comprises: selecting a virtual first position in thevirtual environment; selecting a virtual second position in the virtualenvironment to define a one-dimensional virtual line between the firstand second virtual positions; selecting a virtual third position todefine a two-dimensional virtual area spanned by the first, second, andthird virtual positions; and selecting a fourth virtual position todefine a three-dimensional virtual volume spanned by the first, second,third, and fourth positions, the three-dimensional virtual volume beingthe virtual representation of the first physical item, the secondphysical item, or real-world space, respectively.
 17. The methodaccording to claim 15, further comprising: designating one of thebounding faces of the virtual representation of the real-world space aspenetrable or impenetrable by the virtual representation of the firstphysical item.